<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>ArNetworking: ArNetPacketSenderTcp Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">ArNetworking
   &#160;<span id="projectnumber">dev20180125</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('classArNetPacketSenderTcp.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="classArNetPacketSenderTcp-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">ArNetPacketSenderTcp Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;ArNetPacketSenderTcp.h&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a67e1fe8517cbed89259c1cb785dfe214"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArNetPacketSenderTcp.html#a67e1fe8517cbed89259c1cb785dfe214">ArNetPacketSenderTcp</a> ()</td></tr>
<tr class="memdesc:a67e1fe8517cbed89259c1cb785dfe214"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="#a67e1fe8517cbed89259c1cb785dfe214">More...</a><br /></td></tr>
<tr class="separator:a67e1fe8517cbed89259c1cb785dfe214"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa47d831d6de1eb96496a65262414522c"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArSocket.html">ArSocket</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArNetPacketSenderTcp.html#aa47d831d6de1eb96496a65262414522c">getSocket</a> (void)</td></tr>
<tr class="memdesc:aa47d831d6de1eb96496a65262414522c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the socket this sender uses.  <a href="#aa47d831d6de1eb96496a65262414522c">More...</a><br /></td></tr>
<tr class="separator:aa47d831d6de1eb96496a65262414522c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0dde27e4368adff647295a7bce68e5ff"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArNetPacketSenderTcp.html#a0dde27e4368adff647295a7bce68e5ff">sendData</a> (void)</td></tr>
<tr class="memdesc:a0dde27e4368adff647295a7bce68e5ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tries to send the data there is to be sent.  <a href="#a0dde27e4368adff647295a7bce68e5ff">More...</a><br /></td></tr>
<tr class="separator:a0dde27e4368adff647295a7bce68e5ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acaf0baf768a46d743530ca071ce96bd8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArNetPacketSenderTcp.html#acaf0baf768a46d743530ca071ce96bd8">sendPacket</a> (<a class="el" href="classArNetPacket.html">ArNetPacket</a> *packet, const char *loggingString=&quot;&quot;)</td></tr>
<tr class="memdesc:acaf0baf768a46d743530ca071ce96bd8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sends a packet.  <a href="#acaf0baf768a46d743530ca071ce96bd8">More...</a><br /></td></tr>
<tr class="separator:acaf0baf768a46d743530ca071ce96bd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaae4827c98ee78b511d589799c1bb4ee"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArNetPacketSenderTcp.html#aaae4827c98ee78b511d589799c1bb4ee">setBackupTimeout</a> (double connectionTimeoutInMins)</td></tr>
<tr class="memdesc:aaae4827c98ee78b511d589799c1bb4ee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the connection timeout.  <a href="#aaae4827c98ee78b511d589799c1bb4ee">More...</a><br /></td></tr>
<tr class="separator:aaae4827c98ee78b511d589799c1bb4ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae51c539c7bedb05ab96a34ba510a0c81"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArNetPacketSenderTcp.html#ae51c539c7bedb05ab96a34ba510a0c81">setDebugLogging</a> (bool debugLogging)</td></tr>
<tr class="memdesc:ae51c539c7bedb05ab96a34ba510a0c81"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets debug logging.  <a href="#ae51c539c7bedb05ab96a34ba510a0c81">More...</a><br /></td></tr>
<tr class="separator:ae51c539c7bedb05ab96a34ba510a0c81"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1fcf6884fd55109ef3bc26aaaf46de51"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArNetPacketSenderTcp.html#a1fcf6884fd55109ef3bc26aaaf46de51">setLoggingPrefix</a> (const char *prefix)</td></tr>
<tr class="memdesc:a1fcf6884fd55109ef3bc26aaaf46de51"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the logging prefix.  <a href="#a1fcf6884fd55109ef3bc26aaaf46de51">More...</a><br /></td></tr>
<tr class="separator:a1fcf6884fd55109ef3bc26aaaf46de51"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb1e44978ebb575bd84afd59f8e954be"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArNetPacketSenderTcp.html#aeb1e44978ebb575bd84afd59f8e954be">setSocket</a> (<a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArSocket.html">ArSocket</a> *socket)</td></tr>
<tr class="memdesc:aeb1e44978ebb575bd84afd59f8e954be"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the socket this sender uses.  <a href="#aeb1e44978ebb575bd84afd59f8e954be">More...</a><br /></td></tr>
<tr class="separator:aeb1e44978ebb575bd84afd59f8e954be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a598bff929b796c4d974ef2d994f337a8"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArNetPacketSenderTcp.html#a598bff929b796c4d974ef2d994f337a8">~ArNetPacketSenderTcp</a> ()</td></tr>
<tr class="memdesc:a598bff929b796c4d974ef2d994f337a8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="#a598bff929b796c4d974ef2d994f337a8">More...</a><br /></td></tr>
<tr class="separator:a598bff929b796c4d974ef2d994f337a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:ae0327c491a1fc56449f5ac9511dce00b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArNetPacketSenderTcp.html#ae0327c491a1fc56449f5ac9511dce00b">myAlreadySent</a></td></tr>
<tr class="separator:ae0327c491a1fc56449f5ac9511dce00b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace4dd30f3f9b62dda7346d1b6a266f29"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArNetPacketSenderTcp.html#ace4dd30f3f9b62dda7346d1b6a266f29">myBackupTimeout</a></td></tr>
<tr class="separator:ace4dd30f3f9b62dda7346d1b6a266f29"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1fd773e6097e81451b3b655e71548a25"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArNetPacketSenderTcp.html#a1fd773e6097e81451b3b655e71548a25">myBuf</a></td></tr>
<tr class="separator:a1fd773e6097e81451b3b655e71548a25"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa9dac69efe4a6c057cf8e0474a531f5"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html">ArMutex</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArNetPacketSenderTcp.html#aaa9dac69efe4a6c057cf8e0474a531f5">myDataMutex</a></td></tr>
<tr class="separator:aaa9dac69efe4a6c057cf8e0474a531f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1e80d90c7905736a65e4d1086879cf71"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArNetPacketSenderTcp.html#a1e80d90c7905736a65e4d1086879cf71">myDebugLogging</a></td></tr>
<tr class="separator:a1e80d90c7905736a65e4d1086879cf71"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6e028b8db662735eaa524c4a7fc03855"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArTime.html">ArTime</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArNetPacketSenderTcp.html#a6e028b8db662735eaa524c4a7fc03855">myLastGoodSend</a></td></tr>
<tr class="separator:a6e028b8db662735eaa524c4a7fc03855"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a62ab95d0bff15b681563e0f1ac152e72"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArNetPacketSenderTcp.html#a62ab95d0bff15b681563e0f1ac152e72">myLength</a></td></tr>
<tr class="separator:a62ab95d0bff15b681563e0f1ac152e72"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a01db8d3800b547c0abadd26bd4a45ac3"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArNetPacketSenderTcp.html#a01db8d3800b547c0abadd26bd4a45ac3">myLoggingPrefix</a></td></tr>
<tr class="separator:a01db8d3800b547c0abadd26bd4a45ac3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f1477ad7fe3bf67b16b9b66c555778a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classArNetPacket.html">ArNetPacket</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArNetPacketSenderTcp.html#a3f1477ad7fe3bf67b16b9b66c555778a">myPacket</a></td></tr>
<tr class="separator:a3f1477ad7fe3bf67b16b9b66c555778a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a05c825cad81068731355dbe4cc624307"><td class="memItemLeft" align="right" valign="top">std::list&lt; <a class="el" href="classArNetPacket.html">ArNetPacket</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArNetPacketSenderTcp.html#a05c825cad81068731355dbe4cc624307">myPacketList</a></td></tr>
<tr class="separator:a05c825cad81068731355dbe4cc624307"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1d4e34fe16705a748fd1ebd954a627a2"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArSocket.html">ArSocket</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArNetPacketSenderTcp.html#a1d4e34fe16705a748fd1ebd954a627a2">mySocket</a></td></tr>
<tr class="separator:a1d4e34fe16705a748fd1ebd954a627a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2c21c7e080176fbab1f42bb18c2e147a"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3">ArLog::LogLevel</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArNetPacketSenderTcp.html#a2c21c7e080176fbab1f42bb18c2e147a">myVerboseLogLevel</a></td></tr>
<tr class="separator:a2c21c7e080176fbab1f42bb18c2e147a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a67e1fe8517cbed89259c1cb785dfe214"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ArNetPacketSenderTcp::ArNetPacketSenderTcp </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Constructor. </p>

<p>References <a class="el" href="classArNetPacketSenderTcp.html#ace4dd30f3f9b62dda7346d1b6a266f29">myBackupTimeout</a>, <a class="el" href="classArNetPacketSenderTcp.html#aaa9dac69efe4a6c057cf8e0474a531f5">myDataMutex</a>, <a class="el" href="classArNetPacketSenderTcp.html#a6e028b8db662735eaa524c4a7fc03855">myLastGoodSend</a>, <a class="el" href="classArNetPacketSenderTcp.html#ae51c539c7bedb05ab96a34ba510a0c81">setDebugLogging()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#a00069ede1325b6f9f500ef2636858262">ArMutex::setLogName()</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/group__easy.html#ga7c269e161c8e7cb56bde73dea501a619">ArTime::setToNow()</a>.</p>

</div>
</div>
<a class="anchor" id="a598bff929b796c4d974ef2d994f337a8"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ArNetPacketSenderTcp::~ArNetPacketSenderTcp </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Destructor. </p>

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a1ffc091d20ab361fe67a664b322976a3">ArBasePacket::getLength()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="el" href="classArNetPacketSenderTcp.html#a05c825cad81068731355dbe4cc624307">myPacketList</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>.</p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="aa47d831d6de1eb96496a65262414522c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArSocket.html">ArSocket</a> * ArNetPacketSenderTcp::getSocket </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Gets the socket this sender uses. </p>
<p>Gets the socket that the receiver is using, note that it does not have ownership of this socket and that whatever created it should. </p>

<p>References <a class="el" href="classArNetPacketSenderTcp.html#a1d4e34fe16705a748fd1ebd954a627a2">mySocket</a>.</p>

</div>
</div>
<a class="anchor" id="a0dde27e4368adff647295a7bce68e5ff"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool ArNetPacketSenderTcp::sendData </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Tries to send the data there is to be sent. </p>

<p>References <a class="el" href="classArNetPacket.html#a79546a0d31550048b82920743dd5eeec">ArNetPacket::getArbitraryString()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#ab647b14794b49dc6e34cdb8b82275cfe">ArBasePacket::getBuf()</a>, <a class="el" href="classArNetPacket.html#af058f6edff90eef3961f9b21bc88e2ab">ArNetPacket::getCommand()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArSocket.html#aaa6688b1776c58956b5d77e5b4933ebf">ArSocket::getIPString()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a1ffc091d20ab361fe67a664b322976a3">ArBasePacket::getLength()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#a7b6aee74872c19fb8829d96dc3e52f34">ArMutex::lock()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log()</a>, <a class="el" href="classArNetPacket.html#a11c6eb7a86ddc6ea04a49cc0ea307a64a233ff463989369cb076795dd20c44d22">ArNetPacket::MAX_LENGTH</a>, <a class="el" href="classArNetPacketSenderTcp.html#ae0327c491a1fc56449f5ac9511dce00b">myAlreadySent</a>, <a class="el" href="classArNetPacketSenderTcp.html#ace4dd30f3f9b62dda7346d1b6a266f29">myBackupTimeout</a>, <a class="el" href="classArNetPacketSenderTcp.html#a1fd773e6097e81451b3b655e71548a25">myBuf</a>, <a class="el" href="classArNetPacketSenderTcp.html#aaa9dac69efe4a6c057cf8e0474a531f5">myDataMutex</a>, <a class="el" href="classArNetPacketSenderTcp.html#a1e80d90c7905736a65e4d1086879cf71">myDebugLogging</a>, <a class="el" href="classArNetPacketSenderTcp.html#a6e028b8db662735eaa524c4a7fc03855">myLastGoodSend</a>, <a class="el" href="classArNetPacketSenderTcp.html#a62ab95d0bff15b681563e0f1ac152e72">myLength</a>, <a class="el" href="classArNetPacketSenderTcp.html#a01db8d3800b547c0abadd26bd4a45ac3">myLoggingPrefix</a>, <a class="el" href="classArNetPacketSenderTcp.html#a3f1477ad7fe3bf67b16b9b66c555778a">myPacket</a>, <a class="el" href="classArNetPacketSenderTcp.html#a05c825cad81068731355dbe4cc624307">myPacketList</a>, <a class="el" href="classArNetPacketSenderTcp.html#a1d4e34fe16705a748fd1ebd954a627a2">mySocket</a>, <a class="el" href="classArNetPacketSenderTcp.html#a2c21c7e080176fbab1f42bb18c2e147a">myVerboseLogLevel</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/group__easy.html#ga5385636d566c665eb9d722af6f65aef5">ArTime::secSince()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/group__easy.html#ga7c269e161c8e7cb56bde73dea501a619">ArTime::setToNow()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a012daf6573594f91242f8dd7c02eb74b">ArLog::Terse</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#afb51b5514a9456f23441e479fe58fb46">ArMutex::unlock()</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArSocket.html#af2cfbd564eec7020283f5a6fe41f558f">ArSocket::write()</a>.</p>

<p>Referenced by <a class="el" href="classArClientBase.html#a156525a1b5ca6a26c8b72c48b3c06848">ArClientBase::loopOnce()</a>, <a class="el" href="classArServerClient.html#ab9d0d22f9b160b1411a709c4502a1cee">ArServerClient::shutdown()</a>, <a class="el" href="classArClientBase.html#a9e5670ac90c62d0c156bfa47a50743f2">ArClientBase::startNonBlockingDisconnect()</a>, and <a class="el" href="classArServerClient.html#a8f87f3b1826c19e71af860c992405937">ArServerClient::tcpCallback()</a>.</p>

</div>
</div>
<a class="anchor" id="acaf0baf768a46d743530ca071ce96bd8"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ArNetPacketSenderTcp::sendPacket </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classArNetPacket.html">ArNetPacket</a> *&#160;</td>
          <td class="paramname"><em>packet</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>loggingString</em> = <code>&quot;&quot;</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sends a packet. </p>

<p>References <a class="el" href="classArNetPacket.html#a0cf6a699500c885066dbf6fcaf145756">ArNetPacket::duplicatePacket()</a>, <a class="el" href="classArNetPacket.html#af058f6edff90eef3961f9b21bc88e2ab">ArNetPacket::getCommand()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArBasePacket.html#a1ffc091d20ab361fe67a664b322976a3">ArBasePacket::getLength()</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#a7b6aee74872c19fb8829d96dc3e52f34">ArMutex::lock()</a>, <a class="el" href="classArNetPacketSenderTcp.html#aaa9dac69efe4a6c057cf8e0474a531f5">myDataMutex</a>, <a class="el" href="classArNetPacketSenderTcp.html#a1e80d90c7905736a65e4d1086879cf71">myDebugLogging</a>, <a class="el" href="classArNetPacketSenderTcp.html#a05c825cad81068731355dbe4cc624307">myPacketList</a>, <a class="el" href="classArNetPacket.html#a2771ce232aab3313f52f4d5365d45780">ArNetPacket::setArbitraryString()</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#afb51b5514a9456f23441e479fe58fb46">ArMutex::unlock()</a>.</p>

<p>Referenced by <a class="el" href="classArServerClient.html#a3f898b500f25869bdc5098c7d9a94f93">ArServerClient::sendPacketTcp()</a>, and <a class="el" href="classArClientBase.html#ad0c16dee93dd68923309ccad6ab79128">ArClientBase::sendPacketTcp()</a>.</p>

</div>
</div>
<a class="anchor" id="aaae4827c98ee78b511d589799c1bb4ee"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ArNetPacketSenderTcp::setBackupTimeout </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>connectionTimeoutInMins</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the connection timeout. </p>

<p>References <a class="el" href="classArNetPacketSenderTcp.html#ace4dd30f3f9b62dda7346d1b6a266f29">myBackupTimeout</a>.</p>

<p>Referenced by <a class="el" href="classArServerClient.html#ab440b833ee547250a4c3a9eb254428e0">ArServerClient::setBackupTimeout()</a>, and <a class="el" href="classArClientBase.html#a11ed13bd851b342af904fc7c6695ff6e">ArClientBase::setBackupTimeout()</a>.</p>

</div>
</div>
<a class="anchor" id="ae51c539c7bedb05ab96a34ba510a0c81"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ArNetPacketSenderTcp::setDebugLogging </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>debugLogging</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets debug logging. </p>

<p>References <a class="el" href="classArNetPacketSenderTcp.html#a1e80d90c7905736a65e4d1086879cf71">myDebugLogging</a>, <a class="el" href="classArNetPacketSenderTcp.html#a2c21c7e080176fbab1f42bb18c2e147a">myVerboseLogLevel</a>, <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a7040faf60eeb155eaa85d439b1066ca1">ArLog::Normal</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3a6e80d09c67dad73e9ba736e91ec893be">ArLog::Verbose</a>.</p>

<p>Referenced by <a class="el" href="classArClientBase.html#ab2cf2d19c6da6490fe4c04554a7f31b2">ArClientBase::ArClientBase()</a>, <a class="el" href="classArNetPacketSenderTcp.html#a67e1fe8517cbed89259c1cb785dfe214">ArNetPacketSenderTcp()</a>, and <a class="el" href="classArServerClient.html#aeb58f2cfcc533a91bb89e4e6cff36975">ArServerClient::ArServerClient()</a>.</p>

</div>
</div>
<a class="anchor" id="a1fcf6884fd55109ef3bc26aaaf46de51"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ArNetPacketSenderTcp::setLoggingPrefix </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>prefix</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the logging prefix. </p>

<p>References <a class="el" href="classArNetPacketSenderTcp.html#a01db8d3800b547c0abadd26bd4a45ac3">myLoggingPrefix</a>.</p>

<p>Referenced by <a class="el" href="classArServerClient.html#aeb58f2cfcc533a91bb89e4e6cff36975">ArServerClient::ArServerClient()</a>, and <a class="el" href="classArClientBase.html#a9d362e67fded3e8c36f120663c7f66cd">ArClientBase::setRobotName()</a>.</p>

</div>
</div>
<a class="anchor" id="aeb1e44978ebb575bd84afd59f8e954be"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ArNetPacketSenderTcp::setSocket </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArSocket.html">ArSocket</a> *&#160;</td>
          <td class="paramname"><em>socket</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the socket this sender uses. </p>
<p>Sets the socket that this receiver will use, note that it does not transfer ownership of the socket.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">socket</td><td>the socket to use for receiving data </td></tr>
  </table>
  </dd>
</dl>

<p>References <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#a7b6aee74872c19fb8829d96dc3e52f34">ArMutex::lock()</a>, <a class="el" href="classArNetPacketSenderTcp.html#aaa9dac69efe4a6c057cf8e0474a531f5">myDataMutex</a>, <a class="el" href="classArNetPacketSenderTcp.html#a1d4e34fe16705a748fd1ebd954a627a2">mySocket</a>, and <a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html#afb51b5514a9456f23441e479fe58fb46">ArMutex::unlock()</a>.</p>

<p>Referenced by <a class="el" href="classArClientBase.html#ab2cf2d19c6da6490fe4c04554a7f31b2">ArClientBase::ArClientBase()</a>, and <a class="el" href="classArServerClient.html#aeb58f2cfcc533a91bb89e4e6cff36975">ArServerClient::ArServerClient()</a>.</p>

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a class="anchor" id="ae0327c491a1fc56449f5ac9511dce00b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int ArNetPacketSenderTcp::myAlreadySent</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Referenced by <a class="el" href="classArNetPacketSenderTcp.html#a0dde27e4368adff647295a7bce68e5ff">sendData()</a>.</p>

</div>
</div>
<a class="anchor" id="ace4dd30f3f9b62dda7346d1b6a266f29"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double ArNetPacketSenderTcp::myBackupTimeout</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Referenced by <a class="el" href="classArNetPacketSenderTcp.html#a67e1fe8517cbed89259c1cb785dfe214">ArNetPacketSenderTcp()</a>, <a class="el" href="classArNetPacketSenderTcp.html#a0dde27e4368adff647295a7bce68e5ff">sendData()</a>, and <a class="el" href="classArNetPacketSenderTcp.html#aaae4827c98ee78b511d589799c1bb4ee">setBackupTimeout()</a>.</p>

</div>
</div>
<a class="anchor" id="a1fd773e6097e81451b3b655e71548a25"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const char* ArNetPacketSenderTcp::myBuf</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Referenced by <a class="el" href="classArNetPacketSenderTcp.html#a0dde27e4368adff647295a7bce68e5ff">sendData()</a>.</p>

</div>
</div>
<a class="anchor" id="aaa9dac69efe4a6c057cf8e0474a531f5"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArMutex.html">ArMutex</a> ArNetPacketSenderTcp::myDataMutex</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Referenced by <a class="el" href="classArNetPacketSenderTcp.html#a67e1fe8517cbed89259c1cb785dfe214">ArNetPacketSenderTcp()</a>, <a class="el" href="classArNetPacketSenderTcp.html#a0dde27e4368adff647295a7bce68e5ff">sendData()</a>, <a class="el" href="classArNetPacketSenderTcp.html#acaf0baf768a46d743530ca071ce96bd8">sendPacket()</a>, and <a class="el" href="classArNetPacketSenderTcp.html#aeb1e44978ebb575bd84afd59f8e954be">setSocket()</a>.</p>

</div>
</div>
<a class="anchor" id="a1e80d90c7905736a65e4d1086879cf71"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArNetPacketSenderTcp::myDebugLogging</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Referenced by <a class="el" href="classArNetPacketSenderTcp.html#a0dde27e4368adff647295a7bce68e5ff">sendData()</a>, <a class="el" href="classArNetPacketSenderTcp.html#acaf0baf768a46d743530ca071ce96bd8">sendPacket()</a>, and <a class="el" href="classArNetPacketSenderTcp.html#ae51c539c7bedb05ab96a34ba510a0c81">setDebugLogging()</a>.</p>

</div>
</div>
<a class="anchor" id="a6e028b8db662735eaa524c4a7fc03855"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArTime.html">ArTime</a> ArNetPacketSenderTcp::myLastGoodSend</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Referenced by <a class="el" href="classArNetPacketSenderTcp.html#a67e1fe8517cbed89259c1cb785dfe214">ArNetPacketSenderTcp()</a>, and <a class="el" href="classArNetPacketSenderTcp.html#a0dde27e4368adff647295a7bce68e5ff">sendData()</a>.</p>

</div>
</div>
<a class="anchor" id="a62ab95d0bff15b681563e0f1ac152e72"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int ArNetPacketSenderTcp::myLength</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Referenced by <a class="el" href="classArNetPacketSenderTcp.html#a0dde27e4368adff647295a7bce68e5ff">sendData()</a>.</p>

</div>
</div>
<a class="anchor" id="a01db8d3800b547c0abadd26bd4a45ac3"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::string ArNetPacketSenderTcp::myLoggingPrefix</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Referenced by <a class="el" href="classArNetPacketSenderTcp.html#a0dde27e4368adff647295a7bce68e5ff">sendData()</a>, and <a class="el" href="classArNetPacketSenderTcp.html#a1fcf6884fd55109ef3bc26aaaf46de51">setLoggingPrefix()</a>.</p>

</div>
</div>
<a class="anchor" id="a3f1477ad7fe3bf67b16b9b66c555778a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classArNetPacket.html">ArNetPacket</a>* ArNetPacketSenderTcp::myPacket</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Referenced by <a class="el" href="classArNetPacketSenderTcp.html#a0dde27e4368adff647295a7bce68e5ff">sendData()</a>.</p>

</div>
</div>
<a class="anchor" id="a05c825cad81068731355dbe4cc624307"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::list&lt;<a class="el" href="classArNetPacket.html">ArNetPacket</a> *&gt; ArNetPacketSenderTcp::myPacketList</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Referenced by <a class="el" href="classArNetPacketSenderTcp.html#a0dde27e4368adff647295a7bce68e5ff">sendData()</a>, <a class="el" href="classArNetPacketSenderTcp.html#acaf0baf768a46d743530ca071ce96bd8">sendPacket()</a>, and <a class="el" href="classArNetPacketSenderTcp.html#a598bff929b796c4d974ef2d994f337a8">~ArNetPacketSenderTcp()</a>.</p>

</div>
</div>
<a class="anchor" id="a1d4e34fe16705a748fd1ebd954a627a2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArSocket.html">ArSocket</a>* ArNetPacketSenderTcp::mySocket</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Referenced by <a class="el" href="classArNetPacketSenderTcp.html#aa47d831d6de1eb96496a65262414522c">getSocket()</a>, <a class="el" href="classArNetPacketSenderTcp.html#a0dde27e4368adff647295a7bce68e5ff">sendData()</a>, and <a class="el" href="classArNetPacketSenderTcp.html#aeb1e44978ebb575bd84afd59f8e954be">setSocket()</a>.</p>

</div>
</div>
<a class="anchor" id="a2c21c7e080176fbab1f42bb18c2e147a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="/home/reed/amrsw/Aria/docs/Aria.tag:../../docs/" href="../../docs/classArLog.html#ac8cc0fb3aa323ab2a1c21340fdd1dce3">ArLog::LogLevel</a> ArNetPacketSenderTcp::myVerboseLogLevel</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Referenced by <a class="el" href="classArNetPacketSenderTcp.html#a0dde27e4368adff647295a7bce68e5ff">sendData()</a>, and <a class="el" href="classArNetPacketSenderTcp.html#ae51c539c7bedb05ab96a34ba510a0c81">setDebugLogging()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="ArNetPacketSenderTcp_8h.html">ArNetPacketSenderTcp.h</a></li>
<li><a class="el" href="ArNetPacketSenderTcp_8cpp.html">ArNetPacketSenderTcp.cpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="classArNetPacketSenderTcp.html">ArNetPacketSenderTcp</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.11 </li>
  </ul>
</div>
</body>
</html>
